package com.clwl.supervise.superviseapp.entity.supervise;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;
import java.util.Map;

/**
    * 体系监督检查内容保存
    */
@Data
@TableName(value = "JG_SCHEME_CONTENT")
//@KeySequence(value = "JG_SCHEME_CONTENT_SQE")
public class JgSchemeContent implements Serializable {

    @TableId(value = "ID", type = IdType.AUTO)
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    /**
     * 监管标准-检查内容id
     */
    @TableField(value = "CONTENT_ID")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long contentId;

    /**
     * 体系检查标准表 JG_SCHEME_STANDARD
     */
    @TableField(value = "SCHEME_STANDARD_ID")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long schemeStandardId;

    /**
     * 检查内容
     */
    @TableField(value = "CHECK_CONTENT")
    private String checkContent;

    /**
     * 重要项：1一般项，2重要项
     */
    @TableField(value = "IMPORTENT_ITEM")
    private String importentItem;

    /**
     * 合理缺项：0无，1有
     */
    @TableField(value = "MISSING_ITEM")
    private String missingItem;

    /**
     * 备注
     */
    @TableField(value = "REMARK")
    private String remark;

    /**
     * 分值
     */
    @TableField(value = "SCORE")
    private Double score;

    /**
     * 序号
     */
    @TableField(value = "SERIAL_NUM")
    private Double serialNum;

    /**
     * 选择项：1是、2否、3合理缺项
     */
    @TableField(value = "SELECTION")
    private String selection;

    /**
     * 合理缺项内容
     */
    @TableField(value = "MISSING_ITEM_CONTENT")
    private String missingItemContent;

    /**
     * 问题描述（否）内容
     */
    @TableField(value = "PROBLEM_CONTENT")
    private String problemContent;

    /**
     * 创建时间
     */
    @TableField(value = "CREATE_TIME")
    private Date createTime;

    /**
     * 创建人id
     */
    @TableField(value = "CREATOR_ID")
    private Long creatorId;

    /**
     * 创建人姓名
     */
    @TableField(value = "CREATOR")
    private String creator;

    /**
     * 创建人部门id
     */
    @TableField(value = "CREATE_DEPT_ID")
    private Long createDeptId;

    /**
     * 创建人部门名称
     */
    @TableField(value = "CREATE_DEPT_NAME")
    private String createDeptName;

    /**
     * 是否删除：0-否，1-是
     */
    @TableField(value = "DELETE_FLAG")
    private Integer deleteFlag;

    /**
     * 问题描述照片地址
     */
    @TableField(value = "PROBLEM_FILE")
    private String problemFile;

    /**
     * 文件转码
     */
    @TableField(value = "FILE_PICTURE")
    private String filePicture;
    /**
     * 问题描述输入内容
     */
    @TableField(value = "PROBLEM_CONTENT_INPUT")
    private String problemContentInput;

    /**
     * 检查说明文本输入
     */
    @TableField(value = "MISSING_ITEM_CONTENT_INPUT")
    private String missingItemContentInput;

    /**
     * 是否多选
     */
    @TableField(value = "PROBLEM_PRE_TYPE",exist = false)
    private String problemPreType;

    @TableField(exist = false)
    private Integer riskCount;

    @TableField(exist = false)
    private String checkBasis;

    @TableField(exist = false)
    private String checkMethod;


    @TableField(exist = false)
    private String checkGuide;


    @TableField(exist = false)
    private String checkProblem;


    @TableField(exist = false)
    private Double standardNum;



    @TableField(exist = false)
    private String standardName;




    @TableField(exist = false)
    private List<Map<String,Object>> checkMissingList;



    @TableField(exist = false)
    private List<Map<String,Object>> checkProblemList;



    private static final long serialVersionUID = 1L;
}
